<?php


namespace gizwits\src\Routers\App;


use gizwits\src\Init;
use gizwits\src\Request\Get;
use gizwits\src\Request\Post;

/**
 * Class DeviceScheduler
 * @package gizwits\src\Routers\App
 * @title 获取定时任务
 * @see http://docs.gizwits.com/zh-cn/Cloud/openapi_apps.html#%E8%8E%B7%E5%8F%96%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1
 * @method Scheduler _did($did) 需要设置定时任务的设备id
 * @method Scheduler _limit(int $limit) 返回的结果条数
 * @method Scheduler _skip(int $skip) 表示跳过的条数，间接表示页数
 *
 * @title 创建定时任务
 * @see http://docs.gizwits.com/zh-cn/Cloud/openapi_apps.html#%E5%88%9B%E5%BB%BA%E5%AE%9A%E6%97%B6%E4%BB%BB%E5%8A%A1
 * @method Scheduler _raw($raw) 原始控制指令
 * @method Scheduler _attrs($attrs)
 * @method Scheduler _date($date) 一次性定时任务的执行时间
 * @method Scheduler _time($time) 定时任务执行的时间，精确到分钟，格式xx:xx，如：02:30
 * @method Scheduler _repeat($repeat) 是否重复，”none”,”mon”, “tue”, “wed”, “thu”, “fri”, “sat”, “sun”
 * @method Scheduler _days(array $days) 重复的日期列表，如[1, 15]表示每月1日和15日重复
 * @method Scheduler _start_date($start_date) 定时任务执行的开始日期，该天0点开始，格式xxxx-xx-xx，如2016-09-01
 * @method Scheduler _end_date($end_date) 定时任务执行的结束日期，该天24点结束，格式xxxx-xx-xx，如2016-10-01
 * @method Scheduler _enabled(bool $enabled = true) 是否启用，若不启用则时间到也不触发，默认启用
 * @method Scheduler _remark($remark) 任务备注
 */
class Scheduler extends Init
{
    use Get, Post;

    const DEVICE_SCHEDULER_REPEAT_NONE = 'none';

    const DEVICE_SCHEDULER_REPEAT_MON = 'mon';

    const DEVICE_SCHEDULER_REPEAT_TUE = 'tue';

    const DEVICE_SCHEDULER_REPEAT_WED = 'wed';

    const DEVICE_SCHEDULER_REPEAT_THU = 'thu';

    const DEVICE_SCHEDULER_REPEAT_FRI = 'fri';

    const DEVICE_SCHEDULER_REPEAT_SAT = 'sat';

    const DEVICE_SCHEDULER_REPEAT_SUN = 'sun';

    protected $router = 'app/devices/{did}/scheduler';
}